package cn.hl.hm.vo;

import cn.hl.hm.entity.RechargeRecoardWithdrawal;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import org.codehaus.jackson.annotate.JsonProperty;

import java.math.BigDecimal;
import java.util.Date;

public class RechargeRecoardWithdrawalVo {
    private Integer id;

    private Integer driverId;

    private String driverPhone;

    private String driverName;

    private String cardholder;


    private String withdrawalReason;


    private BigDecimal withdrawalCash;


    private BigDecimal serviceCharge;


    private Long bankCard;


    private String bankName;


    private String reportPerson;


    private Integer reportUserId;


    private Integer operationUserId;


    private String operationAuditReason;


    private String operationAssessorUsername;

    private Date operationAssessorTime;

    private String financialAuditReason;

    private String financialAssessorUsername;

    private Date financialAssessorTime;

    private Integer financialUserId;

    private Byte status;

    private Date createTime;

    private Date updateTime;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getDriverId() {
        return driverId;
    }

    public void setDriverId(Integer driverId) {
        this.driverId = driverId;
    }

    public String getDriverPhone() {
        return driverPhone;
    }

    public void setDriverPhone(String driverPhone) {
        this.driverPhone = driverPhone;
    }

    public String getDriverName() {
        return driverName;
    }

    public void setDriverName(String driverName) {
        this.driverName = driverName == null ? null : driverName.trim();
    }

    public String getCardholder() {
        return cardholder;
    }

    public void setCardholder(String cardholder) {
        this.cardholder = cardholder == null ? null : cardholder.trim();
    }

    public String getWithdrawalReason() {
        return withdrawalReason;
    }

    public void setWithdrawalReason(String withdrawalReason) {
        this.withdrawalReason = withdrawalReason == null ? null : withdrawalReason.trim();
    }

    public BigDecimal getWithdrawalCash() {
        return withdrawalCash;
    }

    public void setWithdrawalCash(BigDecimal withdrawalCash) {
        this.withdrawalCash = withdrawalCash;
    }

    public BigDecimal getServiceCharge() {
        return serviceCharge;
    }

    public void setServiceCharge(BigDecimal serviceCharge) {
        this.serviceCharge = serviceCharge;
    }

    public Long getBankCard() {
        return bankCard;
    }

    public void setBankCard(Long bankCard) {
        this.bankCard = bankCard;
    }

    public String getBankName() {
        return bankName;
    }

    public void setBankName(String bankName) {
        this.bankName = bankName == null ? null : bankName.trim();
    }

    public String getReportPerson() {
        return reportPerson;
    }

    public void setReportPerson(String reportPerson) {
        this.reportPerson = reportPerson == null ? null : reportPerson.trim();
    }


    public Integer getReportUserId() {
        return reportUserId;
    }


    public void setReportUserId(Integer reportUserId) {
        this.reportUserId = reportUserId;
    }


    public Integer getOperationUserId() {
        return operationUserId;
    }


    public void setOperationUserId(Integer operationUserId) {
        this.operationUserId = operationUserId;
    }


    public String getOperationAuditReason() {
        return operationAuditReason;
    }


    public void setOperationAuditReason(String operationAuditReason) {
        this.operationAuditReason = operationAuditReason == null ? null : operationAuditReason.trim();
    }


    public String getOperationAssessorUsername() {
        return operationAssessorUsername;
    }


    public void setOperationAssessorUsername(String operationAssessorUsername) {
        this.operationAssessorUsername = operationAssessorUsername == null ? null : operationAssessorUsername.trim();
    }


    public Date getOperationAssessorTime() {
        return operationAssessorTime;
    }


    public void setOperationAssessorTime(Date operationAssessorTime) {
        this.operationAssessorTime = operationAssessorTime;
    }


    public String getFinancialAuditReason() {
        return financialAuditReason;
    }


    public void setFinancialAuditReason(String financialAuditReason) {
        this.financialAuditReason = financialAuditReason == null ? null : financialAuditReason.trim();
    }

    public String getFinancialAssessorUsername() {
        return financialAssessorUsername;
    }


    public void setFinancialAssessorUsername(String financialAssessorUsername) {
        this.financialAssessorUsername = financialAssessorUsername == null ? null : financialAssessorUsername.trim();
    }


    public Date getFinancialAssessorTime() {
        return financialAssessorTime;
    }


    public void setFinancialAssessorTime(Date financialAssessorTime) {
        this.financialAssessorTime = financialAssessorTime;
    }


    public Integer getFinancialUserId() {
        return financialUserId;
    }


    public void setFinancialUserId(Integer financialUserId) {
        this.financialUserId = financialUserId;
    }


    public Byte getStatus() {
        return status;
    }


    public void setStatus(Byte status) {
        this.status = status;
    }


    public Date getCreateTime() {
        return createTime;
    }


    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 身份证号
     **/
    private String idCard;
    /**
     * 可提金额
     **/
    private BigDecimal canWithdrawCash;
    /**
     * 账户余额
     **/
    private BigDecimal remainCash;

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public BigDecimal getCanWithdrawCash() {
        return canWithdrawCash;
    }

    public void setCanWithdrawCash(BigDecimal canWithdrawCash) {
        this.canWithdrawCash = canWithdrawCash;
    }

    public BigDecimal getRemainCash() {
        return remainCash;
    }

    public void setRemainCash(BigDecimal remainCash) {
        this.remainCash = remainCash;
    }

    public RechargeRecoardWithdrawalVo(RechargeRecoardWithdrawal r) {
        id = r.getId();
        driverId = r.getDriverId();
        driverPhone = r.getDriverAccount();
        cardholder = r.getCardholder();
        withdrawalReason = r.getWithdrawalReason();
        withdrawalCash = r.getWithdrawalCash();
        serviceCharge = r.getServiceCharge();
        bankCard = r.getBankCard();
        bankName = r.getBankName();
        reportPerson = r.getReportPerson();
        reportUserId = r.getReportUserId();
        operationUserId = r.getOperationUserId();
        operationAuditReason = r.getOperationAuditReason();
        operationAssessorUsername = r.getOperationAssessorUsername();
        operationAssessorTime = r.getOperationAssessorTime();
        financialAuditReason = r.getFinancialAuditReason();
        financialAssessorUsername = r.getFinancialAssessorUsername();
        financialAssessorTime = r.getFinancialAssessorTime();
        financialUserId = r.getFinancialUserId();
        status = r.getStatus();
        createTime = r.getCreateTime();
        updateTime = r.getUpdateTime();

    }
}